Autonomous mobile apparatus, autonomous move method, and recording medium

ABSTRACT

An autonomous mobile apparatus includes a memory and a processor. The processor is configured to acquire environment information that is information of a surrounding environment of the autonomous mobile apparatus, based on the acquired environment information, select, as an estimation environment map, an environment map that is suitable for the surrounding environment from among environment maps that are saved in the memory, and estimate a location of the autonomous mobile apparatus using the selected estimation environment map and an image of surroundings of the autonomous mobile apparatus that is captured by an imager.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims the benefit of Japanese Patent Application No.2018-042608, filed on Mar. 9, 2018, the entire disclosure of which isincorporated by reference herein.

FIELD

This application relates generally to an autonomous mobile apparatus, anautonomous move method, and a recording medium.

BACKGROUND

Autonomous mobile apparatuses that create an environment map andautonomously moves, such as cleaning robots that automatically cleanindoor spaces, have become in wide use. When images that are captured bya camera are used for creating an environment map, the contents of thecreated environment map are significantly influenced by environment suchas the lights. Therefore, if its own location is estimated using anenvironment map in an environment that is different from suchenvironment as the lights in which the environment map is created, theperformance in estimating the location is largely deteriorated. As atechnique for solving this problem, International Publication No.2016/016955 describes an autonomous mobile apparatus that estimates itsown location based on the location of a landmark in the surroundingenvironment so as to enable estimation of its own location that is lessinfluenced by external disturbance.

SUMMARY

The autonomous mobile apparatus of the present disclosure is anautonomous mobile apparatus, including a memory and a processor. Theprocessor is configured to acquire environment information that isinformation of a surrounding environment of the autonomous mobileapparatus, based on the acquired environment information, select, as anestimation environment map, an environment map that is suitable for thesurrounding environment from among environment maps that are saved in amemory, and estimate a location of the autonomous mobile apparatus usingthe selected estimation environment map and an image of surroundings ofthe autonomous mobile apparatus that is captured by an imager.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete understanding of this application can be obtained whenthe following detailed description is considered in conjunction with thefollowing drawings, in which:

FIG. 1 is an illustration that shows the appearance of the autonomousmobile apparatus according to Embodiment 1 of the present disclosure;

FIG. 2 is an illustration that shows the appearance of the chargeraccording to Embodiment 1;

FIG. 3 is an illustration for explaining feedback signals that aretransmitted by the charger according to Embodiment 1;

FIG. 4 is a diagram that shows the functional configuration of theautonomous mobile apparatus according to Embodiment 1;

FIG. 5 is a chart that shows the data structure of an environment mapthat is created by the autonomous mobile apparatus according toEmbodiment 1;

FIG. 6 is a flowchart of the start-up procedure of the autonomous mobileapparatus according to Embodiment 1;

FIG. 7 is a flowchart of the own location estimation thread of theautonomous mobile apparatus according to Embodiment 1;

FIG. 8 is a flowchart of the environment map saving procedure of theautonomous mobile apparatus according to Embodiment 1;

FIG. 9 is a flowchart of the environment map extraction procedure of theautonomous mobile apparatus according to Embodiment 1;

FIG. 10 is a flowchart of the relocalization procedure of the autonomousmobile apparatus according to Embodiment 1; and

FIG. 11 is a flowchart of the own location estimation thread of theautonomous mobile apparatus according to Modified Embodiment 2 ofEmbodiment 1 of the present disclosure.

DETAILED DESCRIPTION

The autonomous mobile apparatus according to an embodiment of thepresent disclosure will be described below with reference to thedrawings. Here, in the figures, the same or corresponding parts arereferred to by the same reference numbers.

Embodiment 1

The autonomous mobile apparatus according to an embodiment of thepresent disclosure is an apparatus that autonomously moves according tothe purpose of use while creating maps (environment maps). The purposeof use includes, for example, use for security monitoring, for indoorcleaning, for pets, for toys, and the like.

An autonomous mobile apparatus 100 comprises, as shown in FIG. 1,feedback signal receivers 31 (31 a, 31 b), drivers 32 (32 a, 32 b), animager 33, and charge connectors 35 in appearance. Although not shown inFIG. 1, the autonomous mobile apparatus 100 may comprise an obstaclesensor that detects objects (obstacles) that are present in thesurroundings. Moreover, a charger 200 for charging the battery of theautonomous mobile apparatus 100 comprises, as shown in FIG. 2, feedbacksignal transmitters 51 (51 a, 51 b), power supplies 52, and a charger'simager 53 in appearance.

As the charge connectors 35 of the autonomous mobile apparatus 100 andthe power supplies 52 of the charger 200 are connected, the autonomousmobile apparatus 100 can receive power supply from the charger 200 andcharge the built-in battery. Here, the charge connectors 35 and thepower supplies 52 are each a connection terminal for connecting eachother. The charge connectors 35 and the power supplies 52 are connectedas the autonomous mobile apparatus 100 moves onto the charger 200 bymeans of the drivers 32. The connection may be made as the chargeconnectors 35 and the power supplies 52 make contact or may be madethrough electromagnetic induction as the charge connectors 35 and thepower supplies 52 come close to each other.

The imager 33 comprises a wide-angle lens that allows for photographingin a wide range between the forward and upward fields of the autonomousmobile apparatus 100. Therefore, the imager 33 can capture an image thatmakes it possible to determine whether the ceiling light is on. Then,the autonomous mobile apparatus 100 can perform a process of monocularsimultaneous localization and mapping (SLAM) using the imager 33.

Although not used in Embodiment 1, the charger's imager 53 alsocomprises a wide-angle lens that allows for photographing in a widerange around and above the charger 200. Like the imager 33, thecharger's imager 53 can also capture an image that makes it possible todetermine whether the ceiling light is on.

The feedback signal receivers 31 of the autonomous mobile apparatus 100are a device for receiving feedback signals (infrared beacons) that aretransmitted by the charger 200. A total of two feedback signal receivers31, a feedback signal receiver 31 a to the left and a feedback signalreceiver 31 b to the right in a front view of the autonomous mobileapparatus 100, are provided. Moreover, the feedback signal transmitters51 of the charger 200 are a device for transmitting feedback signals tothe autonomous mobile apparatus 100. A feedback signal transmitter 51 ato the right and a feedback signal transmitter 51 b to the left in afront view of the charger 200 are each provided as the feedback signaltransmitters 51. Then, feedback signals that are transmitted by thefeedback signal transmitter 51 a and feedback signals that aretransmitted by the feedback signal transmitter 51 b are differentsignals. Therefore, the feedback signal receivers 31 can determine fromwhich of the right and left feedback signal transmitters 51 a, 51 b thefeedback signals are received.

FIG. 3 shows exemplary right and left respective receivable ranges 54(54 a, 54 b) of feedback signals that are transmitted by the feedbacksignal transmitters 51 of the charger 200. Feedback signals that aretransmitted by the feedback signal transmitter 51 a can be received whenthe feedback signal receivers 31 of the autonomous mobile apparatus 100enter the receivable range 54 a. Then, feedback signals that aretransmitted by the feedback signal transmitter 51 b can be received whenthe feedback signal receivers 31 of the autonomous mobile apparatus 100enter the receivable range 54 b. Therefore, entering the receivableranges 54, the autonomous mobile apparatus 100 can know the direction inwhich the charger 200 is present. Then, the autonomous mobile apparatus100 advances while adjusting the orientation so that the feedback signalreceiver 31 a receives feedback signals from the feedback signaltransmitter 51 a and the feedback signal receiver 31 b receives feedbacksignals from the feedback signal transmitter 51 b, thereby being able tomove onto the charger 200. As the autonomous mobile apparatus 100 movesonto the charger 200, the charge connectors 35 and the power supplies 52are connected and the battery that is built in the autonomous mobileapparatus 100 can be charged.

The drivers 32 are of an independent two-wheel drive type and movingmeans that comprises wheels and motors. The autonomous mobile apparatus100 can parallel-shift (translation) back and forth by driving the twowheels in the same direction, rotate (turn) on the spot by driving thetwo wheels in opposite directions, and circle (translation+rotation(turn)) by driving the two wheels at different speeds. Moreover, eachwheel is provided with a rotary encoder. The amount of translation andthe amount of rotation can be calculated by measuring the numbers ofrotations of the wheels with the rotary encoders and using geometricrelationships of the diameter of the wheels, the distance between thewheels, and the like. For example, assuming that the diameter of a wheelis D and the number of rotations is R (that is measured by the rotaryencoder), the amount of translation at the ground contact part of thewheel is π·D·R. Moreover, assuming that the diameter of a wheel is D,the distance between the wheels is I, the number of rotations of theright wheel is RR, and the number of rotations of the left wheel is RL,the amount of rotation for turning (assuming that the right turn ispositive) is 360°×D ×(RL−RR)/(2×I). Successively adding the amount oftranslation and the amount of rotation above, the drivers 32 function asso-called odometry (mechanical odometry) and can measure its ownlocation (the location and the orientation with reference to thelocation and the orientation at the start of moving).

As shown in FIG. 4, the autonomous mobile apparatus 100 comprises, inaddition to the feedback signal receivers 31 (31 a, 31 b), the drivers32 (32 a, 32 b), the imager 33, and the charge connectors 35, acontroller 10, a memory 20 and a communicator 34.

The controller 10 comprises a central processing unit (CPU) as aprocessor and the like, and executes programs that are stored in thememory 20 to realize the functions of parts described later (anenvironment information acquirer 11, a map creator 12, an own locationestimator 13, an action planner 14, and a move controller 15). Moreover,comprising a clock (not shown), the controller 10 can acquire thecurrent date/time and measure the elapsed time.

The memory 20 comprises a read only memory (ROM), a random access memory(RAM), and the like. The ROM comprises an electrically rewritable memory(a flash memory or the like) in part or in whole. The memory 20functionally includes a map storage 21 and a map saver 22. The ROMstores programs that are executed by the CPU of the controller 10 anddata that are necessary preliminary to executing the program. The RAMstores data that are created and/or changed while the programs areexecuted.

The map storage 21 stores an environment map that is created by the mapcreator 12 through the SLAM based on information of an image that iscaptured by the imager 33. An environment map includes, as shown in FIG.5, a set of key frame information and a set of MapPoint information aswell as environment information upon acquisition of these sets ofinformation. Each environment map is given a map ID (identifier). Themap ID is an ID for uniquely identifying an environment map.

Here, a key frame is a frame that is used in the SLAM for estimating athree-dimensional (3D) location among images (frames) that are capturedby the imager 33. Then, as shown in FIG. 5, the key frame informationincludes a 3D posture (a location (3D coordinates) and an orientation)within an environment map (in a three-dimensional space) of the imager33 (the autonomous mobile apparatus 100) when the key frame is capturedand information of multiple feature points that are included in the keyframe. Moreover, each key frame information is given a key frame ID thatis an ID for uniquely identifying the key frame.

The feature points that are included in a key frame mean points offeaturing parts within an image such as edge parts and corner parts in akey frame (an image). The feature points can be detected using analgorithm, for example scale-invariant feature transform (SIFT), speededup robust features (SURF), features from accelerated segment test(FAST), and the like. Then, as shown in FIG. 5, information of a featurepoint includes the 2D coordinates of the feature point within the keyframe, a feature quantity of the feature point, and an ID of theMapPoint that corresponds to the feature point when the 3D coordinatesof the feature point within the environment map are already estimated.When the 3D coordinates of the feature point within the environment mapare not yet estimated, a special ID (for example, 0) that indicates thatthe 3D coordinates are not estimated is saved in the “CORRESPONDINGMapPoint ID.”

Here, as a feature quantity of a feature point, for example, a featureof oriented FAST and rotated BRIEF (ORB) can be used. Moreover, theMapPoint means a point of 3D coordinates of a feature point for whichthe 3D coordinates within the environment map are successfully estimatedby the SLAM. The MapPoint information includes, as shown in FIG. 5, aMapPoint ID (an ID for uniquely identifying a MapPoint) and the 3Dcoordinates of the MapPoint within the environment map. Therefore, the3D coordinates of a feature point within the environment map can beacquired from the “corresponding MapPoint ID” that is included in theinformation of the feature point.

Moreover, the environment information is information of surroundingenvironments that possibly influence estimation of the location of theautonomous mobile apparatus 100 such as the light being ON/OFF,brightness information, and the time. Important environment informationis mainly information regarding the brightness (the light being ON/OFF,the curtains being opened/closed, conditions of the sunlight from thewindows (morning or evening, weather), and the like) and may include thenumber of people, the furniture arrangement, and the like. Moreover,although the temperature, the humidity, the atmospheric pressure, andthe like do not directly influence estimation of the location, thesekinds of information may be included in the environment information ifcausing some change in the room arrangement and/or peopleentering/leaving the room.

The map saver 22 is present in the electrically rewritable ROM (such asa flash memory) of the memory 20 and saves the environment map that isstored in the map storage 21 so that the environment map is not erasedafter the autonomous mobile apparatus 100 is powered off.

The communicator 34 is a wireless module including an antenna forwireless communication with the charger 200 and other externalapparatuses. For example, the communicator 34 is a wireless module forshort range wireless communication based on Bluetooth (registeredtrademark). Using the communicator 34, the autonomous mobile apparatus100 can receive image data that are captured by the charger's imager 53that is provided to the charger 200 and exchange data with externalapparatuses.

Next, the functional configuration of the controller 10 of theautonomous mobile apparatus 100 will be described. The controller 10realizes the functions of the environment information acquirer 11, themap creator 12, the own location estimator 13, the action planner 14,and the move controller 15 to create environment maps, estimate its ownlocation, control the move, and so on. Moreover, the controller 10 hasthe capability of multithreading and can execute multiple threads(different process flows) in parallel.

The environment information acquirer 11 acquires environment informationthat presents the surrounding environment, such as the light beingON/OFF and brightness information, based on image data that are capturedby the imager 33. Moreover, when date/time information is included inthe environment information, the environment information acquirer 11acquires the current date/time from the clock that is provided to thecontroller 10.

The map creator 12 creates environment map data that comprise a set ofkey frame information and a set of MapPoint information shown in FIG. 5by the SLAM using the image data that are captured by the imager 33 andwrites the data in the map storage 21.

The own location estimator 13 estimates the posture (the location (3Dcoordinates) and the orientation) of the autonomous mobile apparatus 100within the environment map by the SLAM using the image data that arecaptured by the imager 33 and the environment map data that are createdby the map creator 12. Here, stating “the posture (the location and thelocation)” each time is cumbersome and therefore, simply stating “thelocation” in this specification and the scope of claims means not onlythe location but also the orientation inclusive. In other words, “thelocation” is used to express “the posture (the location and theorientation)” in some cases.

The action planner 14 sets a destination and a route based on theenvironment map that is stored in the map storage 21 and an operationmode. Here, the operation mode determines an action manner of theautonomous mobile apparatus 100. The autonomous mobile apparatus 100 hasmultiple operation modes, for example “a free walking mode” for randomlymoving, “a map creation mode” for expanding the map creation range, and“a destination specification mode” for moving to a place that isspecified by the main thread that is described later or the like.Conditions for shifting the operation mode may be preset; for example,the operation mode is initially the map creation mode and shifted to thefree walking mode when a map is created to some extent (for example,after 10 minutes of the map creation mode) and then to the destinationspecification mode in which the destination is specified to the locationof the charger 200 when the remaining battery level is low.Alternatively, the operation mode may be set by an order from anexternal source (the user, the main thread, or the like). When theaction planner 14 sets a route, the action planner 14 sets a route fromthe current location of the autonomous mobile apparatus 100 to adestination based on an environment map that is created by the mapcreator 12.

The move controller 15 controls the drivers 32 to move the autonomousmobile apparatus 100 along the route that is set by the action planner14.

The functional configuration of the autonomous mobile apparatus 100 isdescribed above. Next, various procedures that are started by theautonomous mobile apparatus 100 will be described. During power-off, theautonomous mobile apparatus 100 is connected to the charger 200 andcharged. Upon power-on, the start-up procedure that is described lateris executed at the location where the autonomous mobile apparatus 100 isconnected to the charger 200 and various threads including the mainthread are executed in parallel. Here, the main thread is a thread forthe autonomous mobile apparatus 100 to execute a procedure thatcorresponds to the purpose of use and, for example, a thread forexecuting an indoor cleaning procedure. Now, the start-up procedure ofthe autonomous mobile apparatus 100 is described with reference to FIG.6. FIG. 6 is a flowchart of the start-up procedure of the autonomousmobile apparatus 100.

First, the controller 10 of the autonomous mobile apparatus 100 startsthe main thread (Step S101). The main thread is a thread for performinga procedure that corresponds to the purpose of use (for example, anindoor cleaning procedure), in response to reception of information ofthe current posture (the 3D coordinates and the orientation within theenvironment map) of the autonomous mobile apparatus 100 from an ownlocation estimation thread that is started in the next step.

Next, the controller 10 starts various threads for the SLAM (Step S102).The various threads for the SLAM mean an own location estimation threadfor estimating the location of the autonomous mobile apparatus 100, amap creation thread for creating an environment map, a loop closingthread for performing a loop closing procedure, and the like. Here, theloop closing procedure means a procedure that is executed when theautonomous mobile apparatus 100 recognizes its returning to the samelocation as before to correct the key frame on the moving trajectory upto the present since the previous visit and related MapPoint 3Dlocations using the difference in value between the posture when theautonomous mobile apparatus 100 was at this same location before and thecurrent posture.

Next, the controller 10 starts the move thread (Step S103). The movethread is a thread for performing, in response to reception of a moveorder from the main thread, a procedure that causes the move controller15 to control the drivers 32 to move the autonomous mobile apparatus100. Then, from then on, the autonomous mobile apparatus 100 iscontrolled by the threads that are started by this start-up procedure.

Among the threads for the SLAM, the own location estimation thread willbe described with reference to FIG. 7. The own location estimationthread is a thread for selecting an environment map that is suitable forthe current environment among the environment maps that are saved in themap saver 22 and performing a tracking procedure (an own locationestimation procedure) using the selected environment map.

First, the controller 10 determines whether environment maps are savedin the map saver 22 (Step S201). If no environment map is saved in themap saver 22 (Step S201; No), the controller 10 starts the SLAM from theinitial state, sets a variable MODE to TRACKING (Step S202), andproceeds to Step S211. Here, the variable MODE is a variable thatpresents whether the autonomous mobile apparatus 100 is currently in astate of being able to estimate its own location (in the state TRACKING)or in a state of being unable to estimate its own location (in the stateLOST).

If environment maps are saved in the map saver 22 (Step S201; Yes), thecontroller 10 performs an environment map extraction procedure that is aprocedure to extract, from among the environment maps that are saved inthe map saver 22, an environment map that is highly possibly suitablefor the current environment (Step S203). Details of the environment mapextraction procedure will be described later.

Then, the controller 10 performs a relocalization procedure that is aprocedure to estimate its own location using an environment map when thecurrent own location is unknown (Step S204). Details of therelocalization procedure will be described later.

Then, the controller 10 determines whether the relocalization procedurewas successful (Step S205). If the relocalization procedure wasunsuccessful (Step S205; No), the controller 10 determines whether thereis a termination order from the main thread or the user (Step S206). Ifthere is a termination order (Step S206; Yes), the own locationestimation thread ends. If there is no termination order (Step S206;No), a move order is issued to the move thread to move (Step S207) andthe processing returns to Step S204 to perform the relocalizationprocedure again. Here, the move in Step S207 is a move for changing animage that is acquired first in the relocalization procedure. If theautonomous mobile apparatus 100 moves, for example, in the processing ofanother thread that is in parallel operation, there is no need to moveagain in Step S207.

On the other hand, if the relocalization procedure was successful (StepS205; Yes), the controller 10 reads into the map storage 21 as theestimation environment map and uses in the subsequent own locationestimation the environment map that was selected during the successfulrelocalization procedure (Step S208). Then, the controller 10 sets thevariable MODE to TRACKING (Step S209) and proceeds to Step S211.

In Step S211, its own location is estimated in the tracking procedure bythe SLAM. This tracking procedure, first, extracts feature points fromimage data that are captured by the imager 33 and acquires, using thefeature quantities, a correspondence between the extracted featurepoints and feature points for which the 3D coordinates are alreadyestimated in a key frame included in the environment map (the estimationenvironment map). If the number of feature points with thecorrespondence acquired (the corresponding feature points) is equal toor higher than a reference trackable number (for example, 10), thecontroller 10 can estimate its own location from the relationshipbetween the 2D coordinates of the corresponding feature points in theimage and the 3D coordinates within the environment map. In such a case,the tracking is successful. If the number of corresponding featurepoints is lower than the reference trackable number, estimation of itsown location leads to a large error and the controller 10 determinesthat the tracking is unsuccessful and does not estimate its ownlocation.

The controller 10 determines whether the tracking procedure wassuccessful after the tracking procedure (Step S212). If the trackingprocedure was successful (Step S212; Yes), the controller 10 transmitsits own location that is acquired in the tracking procedure to the mainthread (Step S213). Then, the controller 10 sleeps for a prescribed time(for example, 10 seconds) (Step S214).

On the other hand, if the tracking procedure was unsuccessful (StepS212; No), the controller 10 sets the variable MODE to LOST (Step S220),transmits to the main thread unsuccessful acquisition of its ownlocation (Step S221), and proceeds to Step S214 to sleep for aprescribed time.

Subsequently, the controller 10 determines whether there is atermination order from the main thread or the user (Step S215). If thereis a termination order (Step S215; Yes), the own location estimationthread ends. If there is no termination order (Step S215; No), anenvironment map saving procedure that is a procedure to save anenvironment map is performed (Step S216). Details of the environment mapsaving procedure will be described later.

Next, the controller 10 determines whether the value that is set in thevariable MODE is LOST (Step S210). If the value that is set in thevariable MODE is not LOST (Step S210; No), this means in the middle ofTRACKING and the processing proceeds to Step S211 to perform thetracking procedure.

If the value that is set in the variable MODE is LOST (Step S210; Yes),the controller 10 performs the relocalization procedure using theenvironment map (the estimation environment map) that is currently inuse (that is read into the map storage 21) (Step S217), and determineswhether that relocalization procedure was successful (Step S218). If therelocalization procedure was successful (Step S218; Yes), the controller10 sets the variable MODE to TRACKING (Step S219) and proceeds to StepS213. If the relocalization procedure was unsuccessful (Step S218; No),the controller 10 proceeds to Step S221.

The own location estimation thread is described above. Next, theenvironment map saving procedure that is executed in Step S216 of theown location estimation thread (FIG. 7) will be described with referenceto FIG. 8. This procedure is a procedure to save in the map saver 22 amap (an estimation environment map) that is stored in the map storage 21in every given time (for example, one hour).

First, the controller 10 determines whether a predetermined time (forexample, one hour) has elapsed since the environment map was saved inthe map saver 22 last time (Step S301). If the predetermined time hasnot elapsed (Step S301; No), the environment map saving procedure ends.If the predetermined time has elapsed (Step S301; Yes), the controller10 captures an image with the imager 33 (Step S302). Then, thecontroller 10 counts the number of regions in the image where theluminance is high to acquire the number of lights that are on (StepS303). Here, the regions in an image where the luminance is high arespecifically the regions that have a luminance that is equal to orhigher than a predetermined reference luminance value. Since the imager33 comprises a wide-angle lens that allows for photographing in a widerange between the forward and upward fields of the autonomous mobileapparatus 100, the ceiling is included in the imaging range and an imagethat makes it possible to determine the number of lights on the ceilingcan be captured. In Step S303, the controller 10 functions as theenvironment information acquirer 11.

Then, the controller 10 writes in the map storage 21 the acquired numberof lights that are on as environment information (Step S304). Then, thecontroller 10 saves in the map saver 22 the environment map (theenvironment map to which the environment information is added as shownin FIG. 5) that is stored in the map storage 21 (Step S305).

Through the environment map saving procedure described above, data of anenvironment map to which environment information is added is saved inthe map saver 22 in every given time. Next, the environment mapextraction procedure that is executed in Step S203 of the own locationestimation thread (FIG. 7) will be described with reference to FIG. 9.This procedure is a procedure to extract, from among multipleenvironment maps that are saved in the map saver 22, an environment mapthat includes environment information that is identical or similar tothe current environment information.

First, the controller 10 captures an image with the imager 33 (StepS401). Then, the controller 10 obtains the number of regions in theimage where the luminance is high (the regions that have a luminancethat is equal to or higher than the predetermined reference luminancevalue) to detect the number of lights that are on (Step S402).

Then, the controller 10 extracts, from among multiple environment mapsthat are saved in the map saver 22, a predetermined number (N) ofcandidate environment maps that are the same or similar in theenvironment information (the number of lights that are on) (Step S403)and ends the environment map extraction procedure. For extracting theenvironment maps, N environment maps are extracted in the order ofsimilarity of the environment information that is added to theenvironment map to the current environment information.

The N extracted environment maps are candidates for an environment mapof future use and thus called candidate environment maps. Here, N can beany number, for example 5 or so; however, only less than N candidateenvironment maps may be extracted when a small number of environmentmaps are saved in the map saver 22.

Through the environment map extraction procedure described above, Ncandidate environment maps having the environment information that isidentical or similar to the current environment information areextracted from among multiple environment maps that are saved in the mapsaver 22. Next, the relocalization procedure that is executed in StepS204 of the own location estimation thread (FIG. 7) will be describedwith reference to FIG. 10.

First, the controller 10 captures an image with the imager 33 (StepS501). Then, the controller 10 detects feature points in the image andcalculates feature quantities of the detected feature points (StepS502). Any method of detecting feature points and any feature quantitycan be used. For example, it is possible to use the FAST as thedetection method and the ORB as the feature quantity.

Next, the controller 10 determines whether a correspondence between thedetected feature points and feature points for which the 3D coordinatesare already estimated in a similar key frame that is found in Step S506later described is checked for all of the N candidate environment mapsthat are extracted in the environment map extraction procedure that isexecuted earlier (Step S503). If the correspondence between the featurepoints is checked for all candidate environment maps (Step S503; Yes),it is assumed that the relocalization procedure was unsuccessful (StepS504) and the relocalization procedure ends.

If there are still remaining candidate environment maps for whichcorrespondence between feature points is not checked (Step S503; No),the controller 10 selects one of the remaining candidate environmentmaps (Step S505). Then, the controller 10 searches for a key frame thatis similar to the image that is acquired in Step S501 (the acquiredimage) in the set of key frame information of the selected candidateenvironment map (Step S506). Any method of searching for a similar keyframe can be used. For example, high speed search is possible byclassifying all key frames within the selected candidate environment mapby a histogram of feature quantities, which is followed by similaritysearch using the similarity between the histogram of feature quantitiesof the acquired image and the histogram.

Then, the controller 10 finds, using the feature quantities,correspondence between the feature points for which the 3D coordinatesare already estimated in the similar key frame that is found in StepS506 and the feature points in the acquired image that is acquired inStep S501. For example, when the similarity between the feature quantityof a feature point (for which the 3D coordinates are already estimated)within a similar key frame and the feature quantity of a feature pointwithin the acquired image is higher than a predetermined referencesimilarity, these two feature points are assumed to be feature pointsthat correspond to each other (the corresponding feature points). Then,the number of such corresponding feature points is obtained (Step S507).

Then, the controller 10 determines whether the number of correspondingfeature points is greater than 3 (Step S508). If the number ofcorresponding feature points is equal to or less than 3 (Step S508; No),the processing returns to Step S503. Here, before returning to StepS503, the processing may return to Step S506 and search for a similarkey frame that was not found last time (namely, the similarity is thesecond highest or lower) among the key frames that are similar to theimage that is acquired in Step S501. This is because the number ofcorresponding feature points may be high in some cases even if thesimilarity is not high.

The processing returns to Step S506 to obtain the number ofcorresponding feature points in another similar key frame apredetermined number of times (for example, three times) and if thenumber of the corresponding feature points is equal to or less than 3(Step S508; No), the processing returns to Step S503.

On the other hand, if the number of corresponding feature points isgreater than 3 (Step S508; Yes), the processing proceeds to Step S509.If four or more feature points among the feature points within theacquired image correspond to feature points (for which the 3Dcoordinates are already estimated) within a similar key frame, it ispossible to estimate the posture (the location and the orientation) ofthe autonomous mobile apparatus 100 at the time of acquisition of theacquired image as a perspective-n-point problem (PnP problem).

In Step S509, the controller 10 solves the PnP problem to estimate theposture of the autonomous mobile apparatus 100. Using the estimatedposture, the controller 10 calculates the error (a correspondence error)between the 2D coordinates of a feature point within the similar keyframe and the 2D coordinates of a feature point within the acquiredimage that corresponds in feature quantity to the feature point withinthe similar key frame, that is, has a feature quantity similar thereto.Here, whether the 3D coordinates are already estimated is not a matterfor this correspondence. Then, if the correspondence error is equal toor smaller than a reference error T, the controller 10 assumes that thelocations of the feature points match and obtains the number of suchmatching, corresponding feature points (the number of matches) (StepS509).

Then, the controller 10 determines whether the number of matches isgreater than a reference match number K (for example, 10) (Step S510).If the number of matches is equal to or less than the reference matchnumber K (Step S510; No), the processing returns to Step S503. If thenumber of matches is greater than the reference match number K (StepS510; Yes), the controller 10 adds the posture that is estimated in StepS509 to the 3D posture in the similar key frame to estimate its ownlocation (Step S511). Then, it is assumed that the relocalizationprocedure was successful (Step S512) and the relocalization procedureends.

Through the relocalization procedure described above, the autonomousmobile apparatus 100 can select an environment map that allows forcorrect estimation of its own location. Here, in the procedure of FIG.10, among the candidate environment maps, the first environment map withthe number of matches greater than K is eventually selected. However, itmay be possible to obtain the number of matches for all candidateenvironment maps and eventually select an environment map that has thehighest number of matches, or to also store the error in coordinatepositions of feature points while obtaining the number of matches andeventually select an environment map that has the smallest error.

Through the own location estimation thread described above, theautonomous mobile apparatus 100 can select as an estimation environmentmap an environment map that is most suitable for the start-upenvironment and thus can perform robust estimation of its own locationover environment change.

Modified Embodiment 1 of Embodiment 1

In Embodiment 1, only the number of lights that are on is used as theenvironment information. Simply using the number of lights as theenvironment information can improve the robustness over environmentchange in comparison to the prior art in which a single environment mapis continuously used. However, other information may be used for furtherimproving the robustness. For example, as Modified Embodiment 1 ofEmbodiment 1, a case in which information of the ceiling light beingON/OFF and information of the brightness of the surrounding environmentare used as the environment information will be described.

In Embodiment 1, only the number of lights that are on is used as theenvironment information. On the other hand, in Modified Embodiment 1 ofEmbodiment 1, information of the light being ON/OFF and information ofthe brightness of the surrounding environment are used as theenvironment information; therefore, the environment information isexpressed by a two-dimensional vector (the ceiling light being ON orOFF, the brightness of the surrounding environment). In Embodiment 1,the number of lights that are on is used as the environment informationas it is in the environment map saving procedure (FIG. 8) and theenvironment map extraction procedure (FIG. 9). In Modified Embodiment 1of Embodiment 1, in each procedure, a two-dimensional vector (theceiling light being ON or OFF, the brightness of the surroundingenvironment) is generated as the environment information.

Here, whether the ceiling light is ON/OFF is determined by determiningwhether there is a region where the luminance is extremely higher thanthe surroundings in the region that corresponds to the top part of theimaging range in the image that is captured by the imager 33. Forexample, if there is a region where the luminance is a reference highluminance value (for example, 10) or more times as high as the averageluminance of the entire image in the upper half region of the capturedimage, it is determined that the ceiling light is on.

Moreover, in regard to information of the brightness of the surroundingenvironment, for obtaining this information, the autonomous mobileapparatus 100 may additionally comprise a brightness sensor oralternatively acquire the brightness of the surrounding environment withthe imager 33. For example, it may be possible to set the exposure timeof the imager 33 to a value for measuring the brightness, acquire animage of the room where the autonomous mobile apparatus 100 is present,and use the average value or the median value of all pixel values of theimage as the brightness of the surrounding environment.

The first value of the two-dimensional vector of the environmentinformation (the ceiling light is ON or OFF) is a binary value, which is1 if the light is ON and 0 if the light is OFF. The second value of thetwo-dimensional vector of the environment information (the brightness ofthe surrounding environment) is the average value or the median value ofthe pixel values as described above. Then, in the above-describedenvironment map saving procedure, the environment information of such atwo-dimensional vector is added to the environment map and saved.Moreover, in the environment map extraction procedure, the similaritybetween the two-dimensional vector of the environment information thatis obtained by capturing an image and the two-dimensional vector of theenvironment information that is added to each of the environment mapsthat are saved in the map saver 22 is obtained and N candidateenvironment maps are extracted in the descending order of thesimilarity. Here, the similarity between the two-dimensional vectors canbe obtained by normalizing the norm of each vector to 1 and calculatingthe inner product.

In the above-described Modified Embodiment 1 of Embodiment 1, change inthe brightness of the surroundings is reflected in the environmentinformation and therefore it is possible to accommodate not onlyinfluence of the light being ON/OFF but also influence of change in thesunlight entering through the windows depending on the position of thesun and influence of the blinds being opened or closed. Therefore, it ispossible to select, as an estimation environment map from among theenvironment maps that are saved in the map saver 22, an environment mapthat is more suitable for the current environment and thus perform morerobust estimation of its own location over environment change.

Here, more varieties of information, if used as the environmentinformation, can be accommodated by increasing the number of dimensionsof the vector that presents the environment information. Moreover, ifthe number of dimensions of the vector is increased, the similarity ofthe environment information can be obtained by normalizing the norms ofthe two target vectors to calculate their similarity to 1 and obtainingthe inner product. Increasing the number of dimensions of the vectorthat presents the environment information makes it possible to increasethe possibility of selecting, as an estimation environment map fromamong the environment maps that are saved in the map saver 22, anenvironment map that is further suitable for the current environment andthus perform further robust estimation of its own location overenvironment change. Here, in the above-described Modified Embodiment 1of Embodiment 1, a case in which the environment information isexpressed by a vector such as a two-dimensional vector is described.However, the environment information is not necessarily expressed by avector and any data structure can be adopted.

Modified Embodiment 2 of Embodiment 1

In the above-described embodiment, the environment map that is in use isnot changed even if the relocalization procedure in Step S217 of the ownlocation estimation thread (FIG. 7) is unsuccessful. However, it isenvisioned that environment such as the brightness of the surroundingsmay change with time when, for example, the autonomous mobile apparatus100 keeps moving for a prolonged time. Modified Embodiment 2 ofEmbodiment 1 in which the environment map to use (an estimationenvironment map) can be changed as necessary in such a case will bedescribed.

In the own location estimation thread according to Modified Embodiment 2of Embodiment 1, as shown in FIG. 11, the processing in Step S231 andSteps S233 through S235 is added to the own location estimation threadaccording to Embodiment 1 (FIG. 7) and the processing in Step S218 isreplaced with the processing in Step S232. The other processing ofModified Embodiment 2 of Embodiment 1 is the same as in Embodiment 1.The added processing is processing for introducing a flag variable F fordetermining whether the “relocalization with the current environmentmap” in Step S217 was unsuccessful two times in a row and starting overfrom Step S203 if unsuccessful two times in a row.

First, in Step S231, the controller 10 initializes the flag variable Fto 0. Then, in Step S232, if the relocalization procedure in Step S217was successful (Step S232; Yes), the processing proceeds to Step S219 asin Step S218. However, if the relocalization procedure was unsuccessful(Step S232; No), the controller 10 determines whether the flag variableF is 1 (Step S233).

If the flag variable F is not 1 (Strep S233; No), the controller 10 setsthe flag variable F to 1 (Step S234) and proceeds to Step S221. If theflag variable F is 1 (Strep S233; Yes), the controller 10 initializesthe flag variable F to 0 (Step S235) and returns to Step S203 to startover from the environment map extraction. The processing other than theabove described processing is the same as in the own location estimationthread according to Embodiment 1 (FIG. 7) and its explanation isomitted.

Through the above-described own location estimation thread, if therelocalization with the environment map (the estimation environment map)that is currently in use is unsuccessful two times in a row, theprocessing starts over from the extraction of candidate environment mapsand an environment map to which environment information that isidentical or similar to the environment information at that time isadded is selected from among the multiple environment maps that aresaved in the map saver 22. Therefore, even if the environment changes,it is possible to reselect an environment map that is suitable for theenvironment at that time as the estimation environment map and thusperform more robust estimation of its own location over environmentchange.

Modified Embodiment 3 of Embodiment 1

In the above-described embodiment, the imager 33 that is provided to theautonomous mobile apparatus 100 is used as means for acquiring theenvironment information. Modified Embodiment 3 of Embodiment 1 in whichthe charger's imager 53 that is provided to the charger 200 is used asthe means for acquiring the environment information will be described.

For acquiring the state of the light being on/off, the brightness of thesurrounding environment, and the like, the autonomous mobile apparatus100 according to Modified Embodiment 3 of Embodiment 1 issues an imagingorder to the charger 200 via the communicator 34 and receives an imagethat is captured by the charger's imager 53 that is provided to thecharger 200 via the communicator 34. Here, although not shown, thecharger 200 also comprises a communicator that is communicable with thecommunicator 34 of the autonomous mobile apparatus 100. The autonomousmobile apparatus 100 according to Modified Embodiment 3 of Embodiment 1is the same as the autonomous mobile apparatus 100 according toEmbodiment 1 except that an image for acquiring the environmentinformation is captured by the charger's imager 53 in place of theimager 33. Here, instead of always using the charger's imager 53 forcapturing an image for acquiring the environment information, it may bepossible to use either the imager 33 or the charger's imager 53 asappropriate or always use both the imager 33 and the charger's imager53.

In the above described Modified Embodiment 3 of Embodiment 1, an imagefor acquiring the environment information is captured by the charger'simager 53 of the charger 200. The charger 200 does not move. Therefore,the charger's imager 53 can capture an image at a predetermined fixedlocation. Therefore, in comparison of using the imager 33 that moveswith the autonomous mobile apparatus 100, the environment informationcan be acquired in a more stable manner. Therefore, it is possible toselect as an estimation environment map an environment map that is moresuitable for the current environment based on this more stableenvironment information and thus perform more robust estimation of itsown location over environment change.

Modified Embodiment 4 of Embodiment 1

In the above described Modified Embodiment 3 of Embodiment 1, thecharger 200 has to comprise the charger's imager 53 and a communicator.Modified Embodiment 4 of Embodiment 1 in which the same effect isobtained using the imager 33 of the autonomous mobile apparatus 100 willbe described.

The autonomous mobile apparatus 100 according to Modified Embodiment 4of Embodiment 1 is charged on the charger 200 while powered OFF. Then,the autonomous mobile apparatus 100 is located on the charger 200immediately after powered on. Therefore, an image that is captured bythe imager 33 immediately after powered on can be treated as the sameimage that is captured by the charger's imager 53 that is fixed to thecharger 200 according to Modified Embodiment 3. Then, in the environmentmap saving procedure that is executed in the own location estimationthread according to Modified Embodiment 4 of Embodiment 1, theprocessing of saving in the map saver 22 an environment map to which theenvironment information is added is performed when the autonomous mobileapparatus 100 returns to the charger 200, not each time a predeterminedtime has elapsed.

The autonomous mobile apparatus 100 according to the above-describedModified Embodiment 4 of Embodiment 1 always captures an image foracquiring the environment information on the charger 200 and thus canacquire change in the environment information in a more stable manner asin Modified Embodiment 3 of Embodiment 1. Therefore, it is possible toselect as an estimation environment map an environment map that is moresuitable for the current environment based on this more stableenvironment information and thus perform more robust estimation of itsown location over environment change.

Modified Embodiment 5 of Embodiment 1

In the above-described embodiments, the autonomous mobile apparatus 100captures an image of the surrounding environment for acquiring theenvironment information with the imager 33 (or the charger's imager 53)and extracts, as candidate environment maps, environment maps to whichenvironment information that is similar to the environment informationthat is acquired through the imaging is added in the environment mapextraction procedure (FIG. 9). However, the user may select candidateenvironment maps. Modified Embodiment 5 of Embodiment 1 in which theuser can select candidate environment maps will be described.

In Modified Embodiment 5 of Embodiment 1, the controller 10 does notneed to acquire environment information by capturing an image in theenvironment map extraction procedure (FIG. 9) and instead, extracts, ascandidate environment maps, environment maps that are selected by theuser. In doing so, the user selects, from an external terminal apparatusor the like via the communicator 34, any number (for example, N) ofenvironment maps he wishes to select from among the environment mapsthat are saved in the map saver 22. Then, the controller 10 performs therelocalization procedure (FIG. 10) using the candidate environment mapsthat are selected by the user.

In order for the user to easily select the environment maps, theexternal terminal apparatus that is used for selecting the environmentmaps may present the meanings of the environment information that isadded to each environment map in an easily-understandable manner. Forexample, for each environment map, environment information “Date ofsaving: March 1, 2018, 10:00, Number of lights that are on; 1,Brightness: 1000 lux” may be displayed so that the user can selectenvironment maps.

In the above-described Modified Embodiment 5 of Embodiment 1, the usercan select candidate environment maps from among the environment mapsthat are saved in the map saver 22. Therefore, the user himself canselect environment maps that are more suitable for the currentenvironment even in a special case in which it is difficult tosuccessfully extract environment maps that are suitable for the currentenvironment through extraction by the similarity of the environmentinformation, and thus it is possible to perform more robust estimationof its own location over environment change. Here, the autonomous mobileapparatus 100 may comprise a microphone and voice recognition functionand acquire environment maps that are selected by the user through voicerecognition. Moreover, instead of all candidate environment maps beingselected by the user, it may be possible that some of candidateenvironment maps are selected by the user and the other candidateenvironment maps are selected by the controller 10 based on thesimilarity of the environment information.

Modified Embodiment 6 of Embodiment 1

In the above-described embodiments, the autonomous mobile apparatus 100captures an image of the surrounding environment for acquiring theenvironment information with the imager 33 (or the charger's imager 53)and saves in the map saver 22 an environment map to which theenvironment information that is acquired through the imaging is added inthe environment map saving procedure (FIG. 8). However, the environmentinformation that is added in saving an environment map may be entered bythe user. Modified Embodiment 6 of Embodiment 1 in which the user canenter environment information that is added to an environment map willbe described.

In Modified Embodiment 6 of Embodiment 1, the controller 10 does notneed to acquire environment information by capturing an image and savesan environment map along with environment information that is entered bythe user in the environment map saving procedure (FIG. 8). In doing so,the user enters any environment information he wishes to add to anenvironment map that is created by the autonomous mobile apparatus 100by then into the autonomous mobile apparatus 100 from an externalterminal apparatus or the like via the communicator 34. At this point,the communicator 34 functions as an inputter that acquires informationthat is entered by the user. Then, the controller 10 saves in the mapsaver 22 an environment map to which the environment information that isentered by the user is added.

In the above-described Modified Embodiment 6 of Embodiment 1, the usercan enter environment information into the autonomous mobile apparatus100. Therefore, the user himself can enter environment information thatproperly presents the current environment into the autonomous mobileapparatus 100 even in a special case in which environment informationcannot properly be acquired. Consequently, it is easier to extractenvironment maps that are suitable for the current environment inextracting candidate environment maps, and thus it is possible toperform more robust estimation of its own location over environmentchange. Here, the autonomous mobile apparatus 100 may comprise amicrophone and voice recognition function and acquire environmentinformation that is entered by the user through voice recognition. Insuch a case, the microphone functions as the inputter.

Moreover, instead of the user entering environment information to add toan environment map for all environment maps, it may be possible to addenvironment information that is entered by the user to an environmentmap only when the user thinks that it is difficult for the controller 10to acquire proper environment information and wishes to enterenvironment information and, otherwise, add to an environment mapenvironment information that is acquired by the environment informationacquirer 11 by capturing an image or so.

Modified Embodiment 7 of Embodiment 1

In the above-described embodiment, the environment maps to whichenvironment information that is identical or similar to the currentenvironment information is added are extracted as candidate environmentmaps in the environment map extraction procedure (FIG. 9). ModifiedEmbodiment 7 of Embodiment 1 in which a randomly selected environmentmap is extracted as a candidate environment map will be described.

In Modified Embodiment 7 of Embodiment 1, an environment map that israndomly selected from among the environment maps that are saved in themap saver 22 is added to the candidate environment maps. For example,for extracting N candidate environment maps, N-1 environment maps areextracted in the order of identicality or similarity to the currentenvironment information and, for the last one, an environment map israndomly selected from among the environment maps that are saved in themap saver 22 and has not yet been extracted and added to the candidateenvironment maps.

In the above-described Modified Embodiment 7 of Embodiment 1, anenvironment map that is randomly selected under no influence of theenvironment information is included in the candidate environment maps.Therefore, it is possible to improve the possibility of an environmentmap that is suitable for the current environment being selected as theestimation environment map even in a special case in which anenvironment map that is suitable for the current environment cannot beextracted based on the similarity of the environment information, andthus perform more robust estimation of its own location over environmentchange. Here, the number of randomly selected environment maps is notrestricted to one and can be any number equal to or lower than N such as2 or N.

Moreover, the above-described embodiment and modified embodiments can becombined as appropriate. For example, the combination of ModifiedEmbodiments 5 and 7 of Embodiment 1 makes it possible to include anenvironment map that is selected by the user and a randomly selectedenvironment map in the candidate environment maps other than thecandidate environment maps that are extracted by the controller 10 basedon the similarity of the environment information. In this way, it ispossible to further increase the possibility of an environment map thatis more suitable for the current environment being selected even in aspecial case in which an environment map that is suitable for thecurrent environment cannot be extracted through extraction based on thesimilarity of the environment information, and thus perform more robustestimation of its own location over environment change.

Here, the above embodiments are described on the assumption that theautonomous mobile apparatus 100 creates maps by the SLAM andperiodically saves in the map saver 22 an environment map that includesenvironment information in the environment map saving procedure (FIG.8). However, it is not essential to create and save maps. Whenenvironment maps that are created under various kinds of environmentinformation are saved in the map saver 22 beforehand, the autonomousmobile apparatus 100 can perform estimation of its own location byselecting from among the environment maps that are saved in the mapsaver 22 and using an environment map that is suitable for the currentenvironment without creating maps.

Moreover, the above embodiments are described on the assumption that, asshown in FIG. 5, an environment map corresponds to a piece ofenvironment information (each environment map is an environment map thatincludes the piece of environment information).

In such a case, environment maps as many as the number of kinds ofenvironment information are created. However, the correspondence betweenenvironment information and environment maps is not restricted thereto.For example, it may be possible that the autonomous mobile apparatus 100creates a single environment map and environment information is includedin each feature point information that is included in the environmentmap, thereby configuring a single environment map that can accommodatemultiple environments. In such a case, upon acquisition of each featurepoint information, environment information at that time is also acquiredand an environment map that includes the environment information in thefeature point information is created. Moreover, for using theenvironment map, the feature point information that includes environmentinformation that is closest to the current environment is used. Such amodified embodiment is also included in the present disclosure.

Here, the functions of the autonomous mobile apparatus 100 can also beimplemented by a computer such as a conventional personal computer (PC).Specifically, the above embodiments are described on the assumption thatthe program for the autonomous move control procedure that is performedby the autonomous mobile apparatus 100 is prestored on the ROM of thememory 20. However, the program may be saved and distributed on anon-transitory computer-readable recording medium such as a flexibledisc, a compact disc read only memory (CD-ROM), a digital versatile disc(DVD), and a magneto-optical disc (MO), and read and installed on acomputer to configure a computer that can realize the above-describedfunctions.

The foregoing describes some example embodiments for explanatorypurposes. Although the foregoing discussion has presented specificembodiments, persons skilled in the art will recognize that changes maybe made in form and detail without departing from the broader spirit andscope of the invention. Accordingly, the specification and drawings areto be regarded in an illustrative rather than a restrictive sense. Thisdetailed description, therefore, is not to be taken in a limiting sense,and the scope of the invention is defined only by the included claims,along with the full range of equivalents to which such claims areentitled.

What is claimed is:
 1. An autonomous mobile apparatus, comprising: amemory; and a processor configured to acquire environment informationthat is information of a surrounding environment of the autonomousmobile apparatus, based on the acquired environment information, select,as an estimation environment map, an environment map that is suitablefor the surrounding environment from among environment maps that aresaved in the memory, and estimate a location of the autonomous mobileapparatus using the selected estimation environment map and an image ofsurroundings of the autonomous mobile apparatus that is captured by animager.
 2. The autonomous mobile apparatus according to claim 1, whereinthe processor is configured to create the environment map using theimage of the surroundings of the autonomous mobile apparatus that iscaptured by the imager in addition to the estimating of the location ofthe autonomous mobile apparatus; and save the created environment map inthe memory in association with the environment information that isacquired while the environment map is created.
 3. The autonomous mobileapparatus according to claim 1, wherein the processor is configured toacquire the environment information by capturing the image of thesurroundings of the autonomous mobile apparatus with the imager.
 4. Theautonomous mobile apparatus according to claim 1, further comprising: acommunicator configured to communicate with a charger of the autonomousmobile apparatus, the charger including a charger imager, wherein theprocessor is configured to acquire the environment information byreceiving through the communicator an image of the surroundings of theautonomous mobile apparatus that is captured by the charger imager. 5.The autonomous mobile apparatus according to claim 1, wherein theprocessor is configured to acquire the environment information byacquiring information that is entered by a user.
 6. The autonomousmobile apparatus according to claim 1, wherein the environmentinformation acquired by the processor includes information of brightnessof the surrounding environment.
 7. The autonomous mobile apparatusaccording to claim 1, wherein the processor is configured to acquire, ata given location, the environment information.
 8. The autonomous mobileapparatus according to claim 7, wherein the processor is configured toacquire, on a charger of the autonomous mobile apparatus, theenvironment information.
 9. The autonomous mobile apparatus according toclaim 1, wherein the processor is configured to extract multiplecandidate environment maps that are candidates for the estimationenvironment map from among the environment maps that are saved in thememory; and select as the estimation environment map a candidateenvironment map having an error in the location of the autonomous mobileapparatus that is equal to or smaller than a reference error, the errorin the location being estimated using each of the multiple extractedcandidate environment maps.
 10. The autonomous mobile apparatusaccording to claim 9, wherein the processor is configured to extract, asthe candidate environment maps from among the environment maps that aresaved in the memory, a predetermined number of environment maps to whichenvironment information that is highly similar to the currentenvironment information is added, the predetermined number ofenvironment maps being extracted in the descending order of thesimilarity.
 11. The autonomous mobile apparatus according to claim 9,wherein the processor is configured to extract as the candidateenvironment maps environment maps that are randomly selected from amongthe environment maps that are saved in the memory.
 12. The autonomousmobile apparatus according to claim 9, wherein the processor isconfigured to extract as the candidate environment maps environment mapsthat are selected by a user from among the environment maps that aresaved in the memory.
 13. The autonomous mobile apparatus according toclaim 1, wherein the processor is configured to, when an error in thelocation of the autonomous mobile apparatus that is estimated using theestimation environment map exceeds a reference error, reselect, as theestimation environment map from among the environment maps that aresaved in the memory, an environment map that is suitable for thesurrounding environment, and estimate the location of the autonomousmobile apparatus using the reselected estimation environment map.
 14. Anautonomous move method, comprising: acquiring environment informationthat is information of a surrounding environment of an autonomous mobileapparatus; based on the acquired environment information, selecting, asan estimation environment map, an environment map that is suitable forthe acquired surrounding environment from among environment maps thatare saved in a memory; and estimating a location of the autonomousmobile apparatus using the selected estimation environment map and animage of surroundings of the autonomous mobile apparatus that iscaptured by an imager.
 15. A non-transitory computer-readable recordingmedium that stores a program causing a computer to execute a process,the process comprising: acquiring environment information that isinformation of a surrounding environment of an autonomous mobileapparatus; based on the acquired environment information, selecting, asan estimation environment map, an environment map that is suitable forthe acquired surrounding environment from among environment maps thatare saved in a memory; and estimating a location of the autonomousmobile apparatus using the selected estimation environment map and animage of surroundings of the autonomous mobile apparatus that iscaptured by an imager.